package array

// Slice 裁剪数组array，从 start 位置开始到end结束，但不包括 end 本身的位置。
func Slice(array []T, startEnd ...int) []T {
	start := 0
	end := len(array)
	if len(startEnd) > 0 {
		start = startEnd[0]
	}
	if len(startEnd) > 1 {
		end = startEnd[1]
	}
	if start < 0 {
		start = 0
	}
	if end > len(array) {
		end = len(array)
	}
	return append([]T{}, array[start:end]...)
}
